Alignment of multiple digital maps used in an automated vehicle

ABSTRACT

A navigation system for an automated vehicle includes an object-detector, a first-map, a second-map, and a controller. The object-detector indicates relative-positions of a plurality of objects proximate to the host-vehicle. The first-map indicates a first-object and a second-object detected by the object-detector. The second-map is different from the first-map. The second-map indicates the first-object and the second-object. The controller is in communication with the object-detector, the first-map, and the second-map. The controller is configured to determine a first-coordinate of the host-vehicle on the first-map based on the relative-positions of the first-object and the second-object, determine a second-coordinate of the host-vehicle on the second-map based on the relative-positions of the first-object and the second-object, and align the first-map and the second-map based on the first-coordinate, the second-coordinate, and the relative-positions of the first-object and the second-object.

TECHNICAL FIELD OF INVENTION

This disclosure generally relates to a navigation system for anautomated vehicle, and more particularly relates to a system that alignsa first-map and a second-map based on the relative-positions of one ormore objects.

BACKGROUND OF INVENTION

It is known that automated vehicles may use or be equipped withredundant systems to achieve some degree of functional safety. Map datafrom multiple sources is often collected in different reference framesand must be aligned before use. This is usually an offline procedurewhich combines the data which creates a single source failure componentwhen delivered to the vehicle. As such, all map databases could bemisaligned relative to world GPS coordinates but should be accuraterelatively to ensure use for automated driving

SUMMARY OF THE INVENTION

Described herein is a system that utilizes on-board sensors to determinea location of a host-vehicle on multiple digital maps using alocalization object from each of the maps that is determined to be thesame object based on perception sensors and statistical analysis oferrors. The system rejects instances of objects for alignment when it isnot possible to align the multiple relative databases so that thevehicle is located on both databases relative to a second perceivedobject (e.g. a lane marker) within an error threshold, twentycentimeters (20 cm) for example. It is assumed that a rough positioningon the maps can be made by, for example, a global-position-system (GPS)or other means known to those in the art. The system uses one or moreperception sensors that form an object-detector to locate an object suchas a street sign, and determines one or more angles (e.g. azimuth and/orelevation) or direction and a distance to that object. The system thencorrelates, based on object relative position and attributes, thisobject with an object in a first-map database, and determines theposition or coordinates of the host-vehicle on first-map relative to theobject. The system also determines the position of the vehicle by asecond object identified by the same perception sensor or a secondperception sensor, e.g. a relative lateral position to a lane marker orcenter barrier seen with a camera. A coordinate with statistical errorsis calculated using data from the first object and second object. Theabove procedure is then applied to a second map database. The systemthen aligns the maps so information from different maps can be used asneeded to control operation of the host-vehicle.

In accordance with one embodiment, a navigation system for an automatedvehicle is provided. The system includes an object-detector, afirst-map, a second-map, and a controller. The object-detector indicatesrelative-positions of a plurality of objects proximate to thehost-vehicle. The first-map indicates a first-object and a second-objectdetected by the object-detector. The second-map is different from thefirst-map. The second-map indicates the first-object and thesecond-object. The controller is in communication with theobject-detector, the first-map, and the second-map. The controller isconfigured to determine a first-coordinate of the host-vehicle on thefirst-map based on the relative-positions of the first-object and thesecond-object, determine a second-coordinate of the host-vehicle on thesecond-map based on the relative-positions of the first-object and thesecond-object, and align the first-map and the second-map based on thefirst-coordinate, the second-coordinate, and the relative-positions ofthe first-object and the second-object.

Further features and advantages will appear more clearly on a reading ofthe following detailed description of the preferred embodiment, which isgiven by way of non-limiting example only and with reference to theaccompanying drawings.

BRIEF DESCRIPTION OF DRAWINGS

The present invention will now be described, by way of example withreference to the accompanying drawings, in which:

FIG. 1 is a diagram of a navigation system for an automated vehicle inaccordance with one embodiment; and

FIG. 2 is an illustration of multiple maps prior to alignment by thesystem of FIG. 1 in accordance with one embodiment.

DETAILED DESCRIPTION

FIG. 1 illustrates a non-limiting example of a navigation system 10,hereafter referred to as the system 10, which is suitable for use by anautomated vehicle, e.g. a host-vehicle 12. As used herein, the termautomated vehicle may apply to instances when the host-vehicle 12 isbeing operated in an automated-mode 14, i.e. a fully autonomous mode,where a human-operator (not shown) of the host-vehicle 12 may do littlemore than designate a destination in order to operate the host-vehicle12. However, full automation is not a requirement. It is contemplatedthat the teachings presented herein are useful when the host-vehicle 12is operated in a manual-mode 16 where the degree or level of automationprovided by the system 10 may be little more than providing audibleand/or visual route guidance to the human-operator who is generally incontrol of the steering, accelerator, and brakes of the host-vehicle 12.

The system 10 includes an object-detector that indicatesrelative-positions 20 of a plurality of objects 22 proximate to, e.g.within two-hundred-meters (200 m) of, the host-vehicle 12. Theobject-detector 18 may include or be formed of, but not limited to, acamera, a radar, a lidar, an ultrasonic transducer, or any combinationthereof. Those in the art will recognize that there are a wide varietyof commercially available devices suitable to use as part of theobject-detector 18. While FIG. 1 may be interpreted to suggest that allof the devices (camera, radar, ultrasonics, and/or lidar) that make upthe object-detector 18 are co-located, possibly in a unified assembly,this is not a requirement. It is contemplated that the various devicesand/or multiple instances of each type of the devices may be distributedat various advantageous locations about the host-vehicle 12.

As will be described in more detail later, the system 10 describedherein makes use of multiple digital maps or multiple map databases foroperating or providing guidance for the operation of the host-vehicle.For example, the system may include, but is not limited to a first-map24 (see also FIG. 2) that indicates a first-object 26, e.g. alane-marking, and a second-object 28, e.g. a stop-sign, that aredetected by the object-detector 18. The system 10 may also include asecond-map 30 that is different from the first-map 24, e.g. first-map 24and the second-map 30 are provided by different companies. In order toalign with each other the first-map 24 and the second-map 30, thereneeds to be at least one instance of the same object being indicated onboth the first-map 24 and the second-map 30. That is, the second-map 30may also indicate or show the first-object 26 and the second-object 28.

While FIG. 1 may be interpreted to suggest that the first-map 24 and thesecond-map 30 are located ‘on-board’ the host-vehicle 12, this is not arequirement. It is contemplated that one or both of the first-map 24 andthe second-map 30 may be stored ‘off-board’ at some remote location on aremote server that can be accessed using wireless communications such asa wireless Wi-Fi network, or a cellular-phone network, or satellitecommunications, as will be recognized by those in the art. It is alsocontemplated that the first-map 24 and the second-map 30 may bedifferent types of maps. For example, one may be characterized as athree-dimensional (3D) model while the other may be more accuratelycharacterized as a two-dimensional (2D) model, possible with somelimited elevation information.

FIG. 2 is a non-limiting example of an illustration 32 that shows howthe first-map 24 and the second-map 30 may be miss-aligned with respectto each other. The reference-coordinates 34 indicated by the X axis, Yaxis, and Z axis may be arbitrarily selected, or may be representativeof world-coordinates with the origin (O) being located on the earth withzero error. The host-vehicle 12 is shown on each of the maps to indicatehow the location of the host-vehicle 12 on each of the first-map 24 andthe second-map 30 is determined based on relative-positions 20 (FIG. 1)of the first-object 26 and the second-object 28. However, because thefirst-map 24 and the second-map 30 may be miss-aligned with respect toeach other, the coordinates of the host-vehicle 12 with respect to thereference-coordinates 34 do not perfectly match. It is recognized thatthe first-map 24 and the second-map 30 could be aligned using a singleinstance of the first-object 26 and the second-object 28 if it wasassumed that the difference was only due to an error or offset along theX axis and/or Y-axis. However, if there is a rotational difference assuggested in FIG. 2, which could be indicated by a difference in headingindicated by a compass reading by the host-vehicle 12 prior to reachingthe indicated positions on the first-map 24 and the second-map 30, thenmultiple instances of objects, e.g. the first-object 26 and thesecond-object 28, are needed to align the first-map 24 and thesecond-map 30.

Returning to FIG. 1, the system 10 may also include a controller 36 incommunication with the object-detector 18, the first-map 24, and thesecond-map 30. The communication with the object-detector 18 may be byway of wires, optical-cable, or wireless communications. Possible waysof communicating with the first-map 24 and the second-map 30 aredescribed above. The controller 36 may include a processor (notspecifically shown) such as a microprocessor or other control circuitrysuch as analog and/or digital control circuitry including an applicationspecific integrated circuit (ASIC) for processing data as should beevident to those in the art. The controller 36 may include memory (notspecifically shown), including non-volatile memory, such as electricallyerasable programmable read-only memory (EEPROM) for storing one or moreroutines, thresholds, and captured data. The one or more routines may beexecuted by the processor to perform steps for determining/identifyingthe first-object 26 and the second-object 28 based on signals receivedby the controller 36 from the object-detector 18 as described herein.

In order to align the first-map 24 and the second-map 30, the controller36 is configured to determine a first-coordinate 40 of the host-vehicle12 on the first-map 24 based on the relative-positions 20 of thefirst-object 26 and the second-object 28. The relative-positions 20 mayinclude a first-distance 42 and a first-direction 44 to the first-object26 and a second-distance 46 and a second-direction 48 to thesecond-object 28. The first-map 24 may provide or indicate absolutecoordinates, e.g. latitude, longitude, elevation, of the first-object 26and the second-object 28. The first-coordinate 40 of the host-vehicle 12on the first-map 24 may then be determined using triangulation based onthe first-distance 42 and the first-direction 44 to the first-object 26and the second-distance 46 and the second-direction 48 to thesecond-object 28.

The controller 36 is also configured to similarly determine asecond-coordinate 50 of the host-vehicle 12 on the second-map 30 basedon the relative-positions 20 of the first-object 26 and thesecond-object 28, which may be done in the same way as was done for thefirst-coordinate 40 using the first-map 24.

Given the first-coordinate 40 and the second-coordinate 50, thecontroller 36 may then align the first-map 24 and the second-map 30based on the first-coordinate 40 the second-coordinate 50 by determiningrelative offsets with respect to the X axis, Y axis, and Z axis of thereference-coordinates 34. However, as previously mentioned, there may bea rotational difference between the first-map 24 and the second-map 30that may be corrected based on or by making use of therelative-positions 20 of the first-object 26 and the second-object 28,e.g. based on the first-distance 42 and the first-direction 44 to thefirst-object 26 and the second-distance 46 and the second-direction 48to the second-object 28. Alternatively, the first-map 24 may indicateabsolute-coordinates of the first-object 26 and the second-object 28,and the first-map 24 and the second-map 30 may be aligned, at leastlinearly, based on the absolute-coordinates of the various objects onthe various maps. For example, offsets along the X axis, Y axis, and Zaxis of the reference-coordinates 34 may be determined to adjust for anydifference in the absolute-coordinates of the first-object 26 indicatedby the first-map 24 and the second-map 30, and then the second-map 30may be rotated about the first-object 26 so a direction or vector fromthe first-object 26 to the second-object 28 indicated by the second-map30 is aligned with a similar direction or vector on the first-map 24.

To determine proximity within a lane based on the first-map 24, usingthe location of the first object 26, the controller 36 could find theclosest point to a lane marker polynomial or centerline polynomial tothe relative first coordinate 40. This is a method that could be usedfor further verification of alignment. It is also anticipated that themap database alignment procedure may always be used when newlocalization objects are detected to maintain the alignment parameters.Alignment parameters may not be constant over even small distances.

It has been observed that a relatively common reason for different mapsto disagree is caused by a difference of location of a particular objecton the different maps. That is, localization errors are more likelycaused by erroneous data regarding the particular object rather than anentire map being grossly miss-aligned with the world, e.g. thereference-coordinates 34. The fundamental cause in some instances hasbeen traced to the particular object having been recently moved, and themap has not been revised or updated to reflect that relocation. Anotherexplanation may be that the position of the particular object on aparticular map may simply have been measured or recorded incorrectly.Techniques and methods to detect and correct such errors have beensuggested elsewhere, so will not be discussed in any detail here.

In response to this problem, the system 10, or more particularly thecontroller 36, may be configured to align the first-map 24 and thesecond-map 30 only when the first-coordinate 40 and thesecond-coordinate 50 differ by less than an error-threshold 52,twenty-five centimeters (25 cm) for example. That is, if the error istoo great, the first-map 24 and the second-map 30 are not aligned inrespect to the first-object 26 and the second-object 28. The cause ofthe error may be due to the aforementioned map errors. Alternatively,the error may be caused by an erroneous measurement made by theobject-detector 18. For example, one or more of the first-distance 42,the first-direction 44, the second-distance 46, and/or thesecond-direction 48 may be in error due to signal noise or anunidentified obstruction.

To address this problem of when the first-coordinate 40 and thesecond-coordinate do not differ by less than an error-threshold 52, i.e.the error is too large, the controller may be configured to ‘discard’,for example, the first-object 26 as a basis for aligning the first-map24 and the second-map 30, and proceed to identify a third-object 54(e.g. a light-pole) with the object-detector 18 that may be used toalign the first-map 24 and the second-map 30. The controller 36 may thendetermine the first-coordinate 40 of the host-vehicle 12 on thefirst-map 24 based on the relative-positions 20 of the second-object 28and the third-object 54, and determine the second-coordinate 50 of thehost-vehicle 12 on the second-map 30 based on the relative-positions 20of the second-object 28 and the third-object 54. That is, the controller36 may determine a third-direction 56 and a third-distance 58 to thethird-object 54, and then replace the previously determined values ofthe first-coordinate 40 and the second-coordinate 50 with values thatwere determined based on the relative-positions 20 of the second-object28 and the third-object 54 instead of the first-object 26 to thesecond-object 28.

Once the difference is less than the error-threshold 52, the controllermay proceed to align the first-map 24 and the second-map 30 based on thefirst-coordinate 40, the second-coordinate 50, and therelative-positions 20 of the second-object 28 and the third-object 54.It is contemplated that this process of discarding one object as a pointof reference and replacing it with a subsequently detected object may becontinued until the first-coordinate 40 and the second-coordinate 50differ by less than the error-threshold 52. For example, if the actualproblem was with the second-object 28, the controller may detect afourth-object 60 and align the maps using the third-object and thefourth-object.

In one respect, this process of discarding objects and selecting newobjects until the first-coordinate 40 and the second-coordinate 50differ by less than the error-threshold 52 may be advantageous as itminimized the number of objects that are tracked at any one time.However, if it is presumed that there will always be some relativelysmall differences between various maps, and that the measurements by theobject-detector 18 may include some modest error, it may be advantageousto take advantage of the general mean-value-theorem and accumulateinformation from more than two objects to determine the first-coordinate40 and the second-coordinate 50.

For example, when the first-coordinate 40 and the second-coordinate 50do not differ by less than the error-threshold 52, the controller 36 maybe configured to identify the third-object 54 with the object-detector18, and then determine the first-coordinate 40 of the host-vehicle 12 onthe first-map 24 based on the relative-positions 20 of the first-object26, the second-object 28, and the third-object 54. For example, threetriangulations (first-object 26 & second-object 28; second-object 28 &,third-object 54; and first-object 26 & third-object 54) may be used todetermine three individual coordinates, and then these individualcoordinates may be averaged to determine the first-coordinate 40.

Similarly, the controller 36 may determine the second-coordinate 50 ofthe host-vehicle 12 on the second-map 30 based on the relative-positionsof the first-object 26, the second-object 28, and the third-object 54using the above described technique. Accordingly, the controller 36 maythen align the first-map 24 and the second-map 30 based on thefirst-coordinate 40, the second-coordinate 50, and therelative-positions 20 of the first-object 26, the second-object 28, andthe third-object 54. As with the previous technique, this averagingtechnique may be used to include the fourth-object 60, or many moreinstances of objects.

While the description above, has been limited to aligning the first-map24 and the second-map 30, it is contemplated that more maps may bealigned, e.g. a third-map 62 may be included that may be, for example, ahighly detailed map of a relatively small area such as a drive-throughrestaurant or other business where it is necessary to dynamicallycontrol the movement of multiple vehicles.

Accordingly, a navigation system (the system 10), a controller 36 forthe system 10, and a method of operating the system 10 is provided. Thesystem 10 provides for a means to make use of multiple maps or sourcesof navigation information for navigating the host-vehicle 12, butaccommodate occasional errors in one of the maps, and/or occasionalerrors by the object-detector 18 in determining the relative-positions20 of the various objects.

While this invention has been described in terms of the preferredembodiments thereof, it is not intended to be so limited, but ratheronly to the extent set forth in the claims that follow.

We claim:
 1. A navigation system for an automated vehicle, said systemcomprising: an object-detector that indicates relative-positions of aplurality of objects proximate to the host-vehicle; a first-map thatindicates a first-object and a second-object detected by theobject-detector; a second-map different from the first-map, saidsecond-map indicates the first-object and the second-object; and acontroller in communication with the object-detector, the first-map, andthe second-map, said controller configured to determine afirst-coordinate of the host-vehicle on the first-map based on therelative-positions of the first-object and the second-object, determinea second-coordinate of the host-vehicle on the second-map based on therelative-positions of the first-object and the second-object, and alignthe first-map and the second-map based on the first-coordinate, thesecond-coordinate, and the relative-positions of the first-object andthe second-object.
 2. The system in accordance with claim 1, wherein therelative-positions include a first-distance and a first-direction to thefirst-object and a second-distance and a second-direction to thesecond-object.
 3. The system in accordance with claim 1, wherein thecontroller is configured to align the first-map and the second-map onlywhen the first-coordinate and the second-coordinate differ by less thanan error-threshold.
 4. The system in accordance with claim 1, whereinwhen the first-coordinate and the second-coordinate do not differ byless than an error-threshold, the controller is configured to identify athird-object with the object-detector, determine the first-coordinate ofthe host-vehicle on the first-map based on the relative-positions of thesecond-object and the third-object, determine the second-coordinate ofthe host-vehicle on the second-map based on the relative-positions ofthe second-object and the third-object, and align the first-map and thesecond-map based on the first-coordinate, the second-coordinate, and therelative-positions of the second-object and the third-object.
 5. Thesystem in accordance with claim 1, wherein when the first-coordinate andthe second-coordinate do not differ by less than an error-threshold, thecontroller is configured to identify a third-object with theobject-detector, determine the first-coordinate of the host-vehicle onthe first-map based on the relative-positions of the first-object, thesecond-object, and the third-object, determine the second-coordinate ofthe host-vehicle on the second-map based on the relative-positions ofthe first-object, the second-object, and the third-object, and align thefirst-map and the second-map based on the first-coordinate, thesecond-coordinate, and the relative-positions of the first-object, thesecond-object, and the third-object.